<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<!--
Generated from $Fink: x11.fr.xml,v 1.26 2007/08/15 21:57:04 dmacks Exp $
-->
<title>Fink Documentation - Utilisation de X11 sous Darwin et Mac OS X</title></head><body>
<table width="100%" cellspacing="0">
<tr valign="bottom">
<td align="center">
Available Languages:  | 
<a href="x11.en.html">English</a> | 
<a href="x11.es.html">Espa&ntilde;ol</a> | 
Fran&ccedil;ais | 
<a href="x11.ja.html">&#26085;&#26412;&#35486; (Nihongo)</a> | 
<a href="x11.pt.html">Portugu&ecirc;s</a> | 
<a href="x11.ru.html">&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081; (Russkiy)</a> | 
<a href="x11.zh.html">&#20013;&#25991; (&#31616;) (Simplified Chinese)</a> | 
</td>
</tr>
</table>
<h1 style="text-align: center;">Utilisation de X11 sous Darwin et Mac OS X</h1>
<p>Ce document traite de l'utilisation de X11, XFree86, et Xtools sur les systèmes Mac OS X et Darwin d'Apple. Il commence par une introduction et l'historique du développement, puis décrit la situation actuelle et les nombreuses options d'utilisation de X11 avec ou sans Fink.</p>
<h2>Contents</h2><ul><li><a href="#intro"><b>1 Introduction</b></a><ul><li><a href="#intro.def-x11">1.1 Qu'est-ce que X11 ?</a></li><li><a href="#intro.def-macosx">1.2 Qu'est-ce que Mac OS X ?</a></li><li><a href="#intro.def-darwin">1.3 Qu'est-ce que Darwin ?</a></li><li><a href="#intro.def-xfree86">1.4 Qu'est-ce que XFree86 ?</a></li><li><a href="#intro.def-xtools">1.5 Qu'est-ce que Xtools ?</a></li><li><a href="#intro.client-server">1.6 Client et Serveur</a></li><li><a href="#intro.rootless">1.7 Que signifie sans racine (rootless) ?</a></li><li><a href="#intro.wm">1.8 Qu'est-ce qu'un gestionnaire de fenêtres ?</a></li><li><a href="#intro.desktop">1.9 Que sont Quartz/Aqua, Gnome et KDE ?</a></li></ul></li><li><a href="#history"><b>2 Historique</b></a><ul><li><a href="#history.early">2.1 Genèse</a></li><li><a href="#history.xonx-forms">2.2 Création de XonX</a></li><li><a href="#history.root-or-not">2.3 Être ou ne pas être racine</a></li></ul></li><li><a href="#inst-xfree86"><b>3 Récupération et installation de X11</b></a><ul><li><a href="#inst-xfree86.fink">3.1 Installation de X11 via Fink</a></li><li><a href="#inst-xfree86.apple-binary">3.2 Binaires d'Apple</a></li><li><a href="#inst-xfree86.official-binary">3.3 Binaires officiels</a></li><li><a href="#inst-xfree86.official-source">3.4 Source Officiel</a></li><li><a href="#inst-xfree86.latest-cvs">3.5 Source le plus récent</a></li><li><a href="#inst-xfree86.switching-x11">3.6 Remplacement de X11</a></li><li><a href="#inst-xfree86.fink-summary">3.7 Résumé des paquets Fink disponibles</a></li></ul></li><li><a href="#run-xfree86"><b>4 Lancement de X11</b></a><ul><li><a href="#run-xfree86.darwin">4.1 Darwin</a></li><li><a href="#run-xfree86.macosx-41">4.2 Mac OS X + XFree86 4.x.y</a></li><li><a href="#run-xfree86.starting-xorg">4.3 Lancement de X.org</a></li><li><a href="#run-xfree86.starting-apples-x11">4.4 Lancement de X11 d'Apple</a></li><li><a href="#run-xfree86.applex11tools">4.5 applex11tools</a></li><li><a href="#run-xfree86.xinitrc">4.6 Fichier .xinitrc</a></li><li><a href="#run-xfree86.oroborosx">4.7 OroborOSX</a></li></ul></li><li><a href="#xtools"><b>5 Xtools</b></a><ul><li><a href="#xtools.install">5.1 Installation de Xtools</a></li><li><a href="#xtools.run">5.2 Lancement de Xtools</a></li><li><a href="#xtools.opengl">5.3 Notes sur OpenGL</a></li></ul></li><li><a href="#other"><b>6 Autres possibilités pour X11</b></a><ul><li><a href="#other.vnc">6.1 VNC</a></li><li><a href="#other.wiredx">6.2 WiredX</a></li><li><a href="#other.exodus">6.3 eXodus</a></li></ul></li><li><a href="#trouble"><b>7 Résolution de problèmes engendrés par XFree86</b></a><ul><li><a href="#trouble.immedate-quit">7.1 Après lancement, XDarwin se termine ou se plante quasi immédiatement</a></li><li><a href="#trouble.black">7.2 Icônes noires dans le panneau GNOME ou dans le menu d'une application GNOME</a></li><li><a href="#trouble.keyboard">7.3 Le clavier ne fonctionne pas sous XFree86</a></li><li><a href="#trouble.delete-key">7.4 La touche retour arrière ne fonctionne pas</a></li><li><a href="#trouble.locale">7.5 "Warning: locale not supported by C library"</a></li></ul></li><li><a href="#tips"><b>8 Conseils d'utilisation</b></a><ul><li><a href="#tips.terminal-app">8.1 Lancement d'applications X11 à partir de Terminal.app</a></li><li><a href="#tips.open">8.2 Lancement d'applications Aqua à partir d'un xterm</a></li><li><a href="#tips.copy-n-paste">8.3 Copier-coller</a></li></ul></li></ul><h2><a name="intro">1 Introduction</a></h2>


<h3><a name="intro.def-x11">1.1 Qu'est-ce que X11 ?</a></h3>

<p>Le <a href="http://www.x.org/">système X Window</a> Version 11, ou X11 en raccourci, est un système d'affichage graphique avec une architecture client-serveur transparente au réseau. Il permet aux applications de tracer sur l'écran des pixels, des lignes, du texte, des images, etc... X11 comprend aussi des librairies supplémentaires qui permettent aux applications de tracer des éléments d'interfaces utilisateur, c'est-à-dire des boutons, des champs texte, etc...</p>
<p>X11 est, de facto, le système graphique standard du monde Unix. Il est livré avec Linux, les variantes *BSD et la plupart des variantes Unix commerciales. Les environnements de bureaux, tels CDE, KDE et GNOME, s'exécutent sous X11.</p>

<h3><a name="intro.def-macosx">1.2 Qu'est-ce que Mac OS X ?</a></h3>

<p><a href="http://www.apple.com/macosx/">Mac OS X</a> est un système opératoire conçu par <a href="http://www.apple.com/">Apple</a>. Comme ses prédécesseurs NeXTStep et OpenStep, il est basé sur BSD et fait donc partie de la famille des systèmes opératoires Unix. Néanmoins, il possède un système d'affichage graphique propriétaire. Le moteur graphique est appelé Quartz et l'interface Aqua, bien que les deux noms soient souvent utilisés de manière interchangeable.</p>

<h3><a name="intro.def-darwin">1.3 Qu'est-ce que Darwin ?</a></h3>

<p><a href="http://opendarwin.org/">Darwin</a> est, à la base, une version réduite de Mac OS X, disponible gratuitement avec son code source. Il ne contient ni Quartz, ni Aqua, ni aucune des technologies qui leur sont rattachées. Par défaut, il ne fournit qu'une console texte.</p>

<h3><a name="intro.def-xfree86">1.4 Qu'est-ce que XFree86 ?</a></h3>

<p><a href="http://www.xfree86.org/">XFree86</a> est une implémentation open source de X11. Au départ, elle a été développée pour tourner sous PC Intel x86, d'où son nom. De nos jours, elle tourne sur de nombreuses architectures et systèmes opératoires, entre autres OS/2, Darwin, Mac OS X et Windows.</p>

<h3><a name="intro.def-xtools">1.5 Qu'est-ce que Xtools ?</a></h3>

<p>Xtools est un produit de <a href="http://www.tenon.com/">Tenon Intersystems</a>. Basé sur XFree86, c'est une version de X11 pour Mac OS X.</p>
<p><b>Note</b> : son développement a, semble-t-il, été stoppé quelque temps avant la publication de Mac OS 10.3.</p>

<h3><a name="intro.client-server">1.6 Client et Serveur</a></h3>

<p>X11 possède une architecture client-serveur. Un programme central réalise la partie graphique et coordonne l'accès des différentes applications, c'est le serveur. Une application qui veut exécuter une fonction graphique sous X11 se connecte au serveur et lui indique ce qu'il faut dessiner. Ces applications sont appelées clients dans le monde X11.</p>
<p>Sous X11, le serveur et les clients peuvent être situés sur des machines différentes, ce qui conduit parfois à une confusion de terminologie. Dans un environnement constitué de stations de travail et de serveurs, on exécute le serveur d'affichage X11 sur la station de travail et les applications (les clients X) sur la machine serveur. Ainsi, lorsque l'on parle de "serveur", on entend par là le serveur d'affichage X11, et non pas la machine cachée dans un placard.</p>

<h3><a name="intro.rootless">1.7 Que signifie sans racine (rootless) ?</a></h3>

<p>Contexte : X11 modélise l'écran comme une arborescence de fenêtres contenues les unes dans les autres. À la racine de l'arborescence se trouve une fenêtre spéciale de la taille de l'écran et qui contient toutes les autres fenêtres. Cette fenêtre contient le fond du bureau et est appelée la "fenêtre racine".</p>
<p>Maintenant, revenons à nos moutons : comme tout environnement graphique, X11 a été écrit pour fonctionner seul et prendre le contrôle de l'écran tout entier. Sous Mac OS X, Quartz contrôle déjà l'écran, aussi il faut prendre des dispositions pour que les deux environnements puissent fonctionner en même temps.</p>
<p>L'un des moyens de faire cela est de faire fonctionner les deux environnements à tour de rôle. À chaque environnement est affecté un écran, mais seul l'un d'entre eux est visible à un moment donné, et l'utilisateur peut basculer de l'un à l'autre. C'est ce qu'on appelle le mode plein-écran ou mode racine. Il est appelé ainsi car il y a alors sur l'écran X11 une fenêtre racine parfaitement normale qui fonctionne exactement comme sur les autres systèmes.</p>
<p>L'autre moyen consiste à mêler les fenêtres des deux environnements. Cela élimine la nécessité de basculer entre les deux écrans. Cela élimine aussi la fenêtre racine de X11, car Quartz se charge déjà du fond de bureau. Comme il n'y aucune fenêtre racine (visible), ce mode est appelé "sans racine". C'est la façon la plus agréable d'utiliser X11 sous Mac OS X.</p>

<h3><a name="intro.wm">1.8 Qu'est-ce qu'un gestionnaire de fenêtres ?</a></h3>

<p>Dans la plupart des environnements graphiques, l'aspect des cadres de fenêtres (barre de titre, bouton de fermeture, etc...) est défini par le système. Sous X11, il en va autrement. Dans cet environnement, les cadres de fenêtres (aussi nommés "ornements") sont fournis par un programme distinct, appelé le gestionnaire de fenêtres. À bien des égards, le gestionnaire de fenêtres n'est autre qu'une application client ; il est lancé de la même façon et dialogue avec le serveur X au travers des mêmes canaux.</p>
<p>Vous avez le choix entre une multitude de gestionnaires de fenêtres. Le site <a href="http://www.xwinman.org/">xwinman.org</a> en donne la liste complète. Les plus populaires sont ceux qui permettent à l'utilisateur de personnaliser leur apparence via ce qu'on appelle des <a href="http://www.themes.org/">thèmes</a>. La plupart des gestionnaires de fenêtres fournissent d'autres fonctionnalités, comme les menus déroulants dans la fenêtre racine, les docks et les boutons de lancement.</p>
<p>De nombreux gestionnaires de fenêtres ont été compilés pour Fink ; en voici la <a href="http://pdb.finkproject.org/pdb/section.php/x11-wm">liste actuelle</a>.</p>

<h3><a name="intro.desktop">1.9 Que sont Quartz/Aqua, Gnome et KDE ?</a></h3>

<p>Ce sont des environnements de bureau ; il y en a bien d'autres. Leur but est de proposer un cadre aux applications, de telle sorte que leur aspect et leur comportement présentent une constante visuelle. Par exemple :</p>
<p>un moteur graphique : X11</p>
<p>un gestionnaire de fenêtre : <a href="http://sawmill.sourceforge.net/">sawfish</a></p>
<p>un bureau : <a href="http://www.gnome.org/">Gnome</a></p>
<p>La frontière entre moteur d'affichage graphique, gestionnaire de fenêtres et bureau est floue, car une même fonctionnalité (ou une fonctionnalité similaire) peut être implémentée par l'un de ces environnements ou plusieurs d'entre eux. C'est une des raisons pour laquelle un gestionnaire de fenêtres particulier peut ne pas fonctionner avec un environnement de bureau donné.</p>
<p>De nombreuses applications sont développées pour être intégrées dans un environnement de bureau spécifique. Très souvent, il suffit d'installer les librairies de l'environnement de bureau (et les librairies sous-jacentes) avec lesquelles l'application a été développée pour qu'elle fonctionne (quasi) sans perte de fonctionnalités. Par exemple, un nombre de plus en plus grand d'<a href="http://pdb.finkproject.org/pdb/section.php/gnome">applications GNOME</a> fonctionnent hors de l'environnement GNOME. Malheureusement, <a href="http://www.finkproject.org/faq/usage-fink.php#kde">ce n'est pas encore le cas</a> pour les <a href="http://www.kde.org/">applications KDE</a>.</p>

<h2><a name="history">2 Historique</a></h2>



<p>[Désolée pour le langage épique, c'était trop tentant...]</p>

<h3><a name="history.early">2.1 Genèse</a></h3>

<p>Au commencement était le néant. Darwin balbutiait à peine, Mac OS X en était encore au stade embryonnaire et il n'existait aucune implémentation de X11 pour l'un et l'autre.</p>
<p>Il y eut John Carmack qui porta XFree86 sur Mac OS X Server, le seul système opératoire disponible en ce temps-là dans la famille Darwin. Puis vint Dave Zarzycki qui modifia ce port pour XFree86 4.0 et Darwin 1.0. Les rustines trouvèrent un nid douillet dans le référentiel CVS de Darwin et s'y reposèrent en attendant les évènements.</p>

<h3><a name="history.xonx-forms">2.2 Création de XonX</a></h3>

<p>Un beau jour apparut Torrey T. Lyons et il donna aux rustines Darwin tous les soins qu'elles réclamaient. Enfin, il les plaça dans un nouveau foyer, le référentiel CVS officiel de XFree86. Ce fut l'ère de Mac OS X Public Beta et de Darwin 1.2. XFree86 4.0.2 tournait bien sur Darwin, mais les utilisateurs de Mac OS X devait se déconnecter d'Aqua et ouvrir la console pour le faire tourner. Alors Torrey prit avec lui l'<a href="http://mrcla.com/XonX/">équipe XonX</a> et commença un long voyage vers le port de XFree86 sur Mac OS X.</p>
<p>À peu près à la même époque, Tenon commença à construire XTools, en se fondant sur XFree86 4.0.</p>

<h3><a name="history.root-or-not">2.3 Être ou ne pas être racine</a></h3>

<p>Bientôt l'équipe XonX réussit à faire tourner XFree86 en mode plein écran parallèlement à Quartz et mit à disposition d'utilisateurs intrépides des versions de test. Celles-ci furent appelées XFree86-Aqua, ou XAqua en raccourci. Comme Torrey avait pris l'initiative de tout cela, les modifications allèrent directement dans le référentiel CVS de XFree86, ce qui aboutit à la version 4.1.0.</p>
<p>Dans les premiers temps, l'interface avec Quartz se faisait via une petite application appelée Xmaster.app (écrite avec Carbon, puis réécrite en Cocoa). Plus tard, ce code fut intégré dans le serveur X, donnant naissance à XDarwin.app. La gestion des librairies partagées fut ajoutée à cette époque (et l'on réussit à convaincre Tenon d'utiliser ce jeu de rustines au lieu du leur, afin de garantir la compatibilité binaire). Il y eut même une certaine avancée sur un mode sans racine (avec l'API Carbon), mais hélas, il était trop tard pour l'intégrer dans XFree86 4.10. Et la rustine sans racine vogua, sans attaches, sur le réseau. Après la mise à disposition de XFree86 4.10 en mode en plein écran, les travaux sur le mode sans racine continuèrent, en utilisant l'API Cocoa cette fois-ci. Un mode sans racine expérimental fut mis dans le référentiel CVS de XFree86.</p>
<p>Pendant ce temps, Apple sortait Mac OS X 10.0 et Darwin 1.3 ; quelques semaines plus tard, Tenon sortait Xtools 1.0.</p>
<p>Les travaux d'intégration du mode sans racine dans XFree86 continuèrent, si bien que, lorsque XFree86 4.2.0 sortit en janvier 2002, la version Darwin/Mac OS X avait été complètement intégrée dans la distribution principale de XFree86.</p>

<h2><a name="inst-xfree86">3 Récupération et installation de X11</a></h2>


<h3><a name="inst-xfree86.fink">3.1 Installation de X11 via Fink</a></h3>

<p>Fink vous permet d'installer X11 de nombreuses façons ; entre autres,  il fournit aussi ses propres paquets XFree86. Si vous utilisez, <tt style="white-space: nowrap;">fink install ...</tt>, il téléchargera le code source et le compilera sur votre ordinateur. Si vous utilisez <tt style="white-space: nowrap;">apt-get install ...</tt> ou l'interface <tt style="white-space: nowrap;">dselect</tt>, il téléchargera des paquets binaires précompilés, identiques à ceux de la distribution officielle XFree86.</p>
<p><b>Notes générales</b> :</p>
<ul><li>Tous les paquets X11 disponibles actuellement via Fink gèrent à la fois les opérations plein écran et sans racine, ainsi que OpenGL.</li>
<li><b>Note importante</b> : certains fichiers ne sont pas situés au même endroit dans les différentes versions de X11. Cela signifie, qu'en général, si vous tentez de passer à une version inférieure de X11, les binaires (programmes exécutables, etc...) ne fonctionneront plus. Vous devrez alors reconstruire les paquets concernés par ce phénomène.
<p>L'inverse n'est pas vrai : les paquets construits avec une ancienne version de X11 fonctionnent en général avec une version ultérieure.</p>
<p>Pour 10.3 et 10.4, la hiérarchie X11 (postériorité du code source) est la suivante :</p>
<pre>xorg &gt; xfree86 &gt; X11 d'Apple</pre>
</li></ul>
<p><b>Utilisateurs 10.4</b> :</p>
<p>Vous pouvez installer la version 4.5.0-23 de XFree86 à partir du source. Vous devez installer les deux paquets <tt style="white-space: nowrap;">xfree86</tt> et <tt style="white-space: nowrap;">xfree86-shlibs</tt> pour obtenir une installation parfaitement fonctionnelle.</p>
<p>Vous pouvez aussi installer la version X11 de X.org (version 6.8.2-35 à la date de rédaction de ce manuel) à l'aide des paquets <tt style="white-space: nowrap;">xorg</tt> et <tt style="white-space: nowrap;">xorg-shlibs</tt>, situés dans l'arborescence instable. Cette version de X11 est similaire à la version 4.5 de XFree86, mais elle corrige certains bogues, apporte de nouvelles fonctionnalités et supprime certaines parties de code sur lesquels il existe des problèmes de licence.</p>
<p><b>Utilisateurs 10.3</b> :</p>
<p>Vous pouvez installer la version 4.4.0-13 (celle qui est dans la distribution binaire à la date de rédaction de ce manuel) ou la version 4.5.0-13 (celle qui est disponible sous forme source). Les paquets <tt style="white-space: nowrap;">xfree86</tt> et <tt style="white-space: nowrap;">xfree86-shlibs</tt> sont tous les deux nécessaires à une installation complètement fonctionnelle.</p>
<p>Vous pouvez aussi installer la version X11 de X.org (version 6.8.2 à la date de rédaction de ce manuel) à l'aide des paquets <tt style="white-space: nowrap;">xorg</tt> et <tt style="white-space: nowrap;">xorg-shlibs</tt>, comme indiqué ci-dessus..</p>

<p><b>Utilisateurs 10.2</b> :</p>
<p>Les utilisateurs de la version Mac OS X 10.2 peuvent installer la version 4.3 sous forme source ou binaire, et la version 4.4 à partir de l'arborescence instable. Comme indiqué ci-dessus, vous devrez installer les deux paquets <tt style="white-space: nowrap;">xfree86</tt> et <tt style="white-space: nowrap;">xfree86-shlibs</tt>.</p>

<p>XFree86 4.2.1.1 est aussi disponible pour les utilisateurs de Mac OS X 10.2, sous forme <tt style="white-space: nowrap;">normale</tt> ou <tt style="white-space: nowrap;">avec processus légers (-threaded)</tt>, bien que ces versions soient considérées comme obsolètes (les versions ultérieures de X11 gèrent toutes les processus légers). Les paquets <tt style="white-space: nowrap;">xfree86-base</tt>, <tt style="white-space: nowrap;">xfree86-base-shlibs</tt>, <tt style="white-space: nowrap;">xfree86-shlibs</tt> et <tt style="white-space: nowrap;">xfree86-rootless-shlibs</tt> - ou leurs équivalents pour <tt style="white-space: nowrap;">processus légers (-threaded)</tt> - doivent tous être installés pour obtenir une version fonctionnelle de XFree86. De plus, il faut installer les paquets <tt style="white-space: nowrap;">xfree86-base-dev</tt> et <tt style="white-space: nowrap;">xfree86-rootless-dev</tt> packages - ou leurs équivalents pour <tt style="white-space: nowrap;">processus légers (-threaded)</tt> - pour empêcher Fink d'installer une version plus récente.</p>

<p><b>Utilisateurs 10.1</b> :</p>
<p>Vous ne pouvez installer que la version 4.2.0 de la distribution binaire. Il faudra installer les paquets <tt style="white-space: nowrap;">xfree86-base</tt> et <tt style="white-space: nowrap;">xfree86-rootless</tt>.</p>

<h3><a name="inst-xfree86.apple-binary">3.2 Binaires d'Apple</a></h3>

<p>Le 7 janvier 2003, Apple a mis à disposition <a href="http://www.apple.com/macosx/x11/">une implémentation X11 personnalisée basée sur XFree86-4.2</a>, qui incluait un rendu Quartz et l'accélération OpenGL. Une nouvelle version est sortie le 10 Février 2003, qui comportait des fonctionnalités supplémentaires et des corrections de bogues. Une troisième version (la Bêta 3) est sortie le 17 mars 2003 avec de nouvelles fonctionnalités et des corrections de bogues. Cette version peut être utilisée sur Jaguar.</p>
<p>Le 24 octobre 2003, Apple a sorti Panther (10.3), qui inclut sa propre version de X11. Cette version est basée sur XFree86-4.3.</p>
<p>Le 29 avril 2005, Apple a sortiTiger (10.4), qui inclut sa propre version de X11. Cette version est basée sur XFree86-4.4.</p>
<p>Pour utiliser les binaires d'Apple, vous devez d'une part vous assurer que le paquet <b>X11 User</b> est installé et, d'autre part <a href="http://www.finkproject.org/doc/users-guide/upgrade.php">mettre à jour</a> Fink.</p>
<p>Avec <tt style="white-space: nowrap;">fink-0.16.2</tt>, vous devez aussi installer le paquet <b>X11 SDK</b>. Ensuite, Fink créera un paquet virtuel <tt style="white-space: nowrap;">system-xfree86</tt>.</p>
<p>Avec <tt style="white-space: nowrap;">fink-0.17.0</tt> et les versions ultérieures, n'installez le paquet X11 SDK que si vous souhaitez construire des paquets à partir du source. Dans ce cas, même si vous n'avez pas installé le SDK, il y aura création des paquets virtuels <tt style="white-space: nowrap;">system-xfree86</tt> et <tt style="white-space: nowrap;">system-xfree86-shlibs</tt>, ce dernier correspondant aux librairies partagées. Si vous installez le SDK, il y aura création d'un paquet <tt style="white-space: nowrap;">system-xfree86-dev</tt>, représentant les headers.</p>
<p>Si vous avez déjà installé une distribution XFree86, que ce soit avec Fink ou non, vous pouvez suivez les  <a href="#inst-xfree86.switching-x11">instructions de remplacement d'un paquet X11 par un autre</a>. Supprimez vos paquets existants, puis installez X11 d'Apple (et, éventuellement, X11 SDK).</p>
<p>Notes au sujet de l'utilisation de X11 d'Apple :</p>
<ul>
<li>
<p>Le paquet <tt style="white-space: nowrap;">autocutsel</tt> n'est plus nécessaire. Vous devez le désactiver avant de démarrer X11 d'Apple, dans le cas où il serait activé.</p>
</li>
<li>
<p>X11 d'Apple utilise votre fichier de configuration <tt style="white-space: nowrap;">~/.xinitrc</tt>, s'il existe. Si vous voulez profiter au maximum de l'intégration Quartz, utilisez <tt style="white-space: nowrap;">/usr/X11R6/bin/quartz-wm</tt> comme gestionnaire de fenêtres, ou supprimez complètement votre fichier <tt style="white-space: nowrap;">~/.xinitrc</tt>.</p>
<p>Si vous voulez simplement pouvoir copier-coller, mais désirez utiliser un autre gestionnaire de fenêtres, vous pouvez vous baser sur l'exemple suivant :</p>
<pre>/usr/X11R6/bin/quartz-wm --only-proxy &amp;
exec /sw/bin/fvwm2</pre>
<p>Vous pouvez, bien entendu, utiliser un autre gestionnaire de fenêtres, <tt style="white-space: nowrap;">startkde</tt>, etc...</p>
</li>
<li>
<p><tt style="white-space: nowrap;">quartz-wm</tt> ne gère pas complètement les astuces des gestionnaires de fenêtres Gnome/KDE. Vous observerez peut-être des comportements étranges dans des fenêtres qui ne devraient pas avoir d'ornements, mais en ont pourtant.</p>
</li>
<li>
<p>X11 d'Apple ne respecte pas, par défaut, les configurations d'environnement de Fink. Pour démarrer des applications installées via Fink (par exemple : gestionnaires de fenêtres,  gnome-session ou d'autres applications situées dans le répertoire <tt style="white-space: nowrap;">/sw/bin</tt>), placez la ligne suivante dans les premières lignes du fichier <tt style="white-space: nowrap;">~/.xinitrc</tt> (c'est-à-dire après l'initialisation "<tt style="white-space: nowrap;">#!/bin/sh</tt>", mais avant de démarrer tout autre programme) :</p>
<pre> . /sw/bin/init.sh
</pre>
<p>de façon à ce que votre environnement Fink soit initialisé. <b>Note</b> : <tt style="white-space: nowrap;">init.sh</tt> est utilisé au lieu de <tt style="white-space: nowrap;">init.csh</tt>, car <tt style="white-space: nowrap;">.xinitrc</tt> est lancé par <tt style="white-space: nowrap;">sh</tt> au lieu de <tt style="white-space: nowrap;">tcsh</tt>.</p>
</li>
<li>
<p>Les applications qui appellent d'autres programmes situés dans l'arborescence de Fink pour réaliser certaines de leurs fonctions doivent subir un traitement spécial pour que l'on puisse les appeler à partir du menu Applications. Au lieu de mettre le chemin complet du fichier, par exemple :</p>
<pre>/sw/bin/emacs</pre>
<p>vous devez utiliser une commande semblable à la suivante, si vous utilisez le shell bash :</p>
<pre>. /sw/bin/init.sh ; emacs</pre>
<p>et si vous utilisez le shell tcsh, une commande semblable à celle-ci :</p>
<pre>source /sw/bin/init.csh ; emacs</pre>
<p>Ceci garantit que l'application aura un PATH correct. Vous pouvez utiliser cette syntaxe pour toute application installée via Fink.</p>
</li>
<li>
<p>Si vous tentez de compiler un paquet avec X11 d'Apple et que vous obtenez une erreur du genre suivant :</p>
<pre>ld: err.o illegal reference to symbol: _XSetIOErrorHandler 
defined in indirectly referenced dynamic library 
/usr/X11R6/lib/libX11.6.dylib</pre>
<p>assurez-vous alors que le drapeau <tt style="white-space: nowrap;">-lX11</tt> existe à l'édition de liens. Vérifiez les options de compilation de votre paquet pour voir comment fournir ce paramètre.</p>
</li>
<li>
<p>Si vous utilisez le paquet <tt style="white-space: nowrap;">xfree86</tt> et que vous changiez plus tard pour X11 d'Apple (sur 10.2.x ou 10.3.x), vous devez recompiler tout paquet compilé antérieurement avec <tt style="white-space: nowrap;">xfree86</tt>, car les binaires sont incompatibles.</p>
</li>
<li><p><b>Utilisateurs 10.3 et 10.4 uniquement</b> : on peut utiliser le serveur d'affichage d'Apple et son gestionnaire de fenêtres avec XFree86 ou X.org. Si vous installez le paquet <tt style="white-space: nowrap;">applex11tools</tt>, Fink installera tout ce qui est nécessaire pour ce faire à condition que le paquet X11User.pkg soit installé.</p></li>
</ul>
<p>Pour de plus amples informations sur l'utilisation de X11 d'Apple, voir cet <a href="http://developer.apple.com/darwin/runningx11.html">article</a> sur Apple Developer Connection.</p>

<h3><a name="inst-xfree86.official-binary">3.3 Binaires officiels</a></h3>

<p>Le projet XFree86 comprend une distribution binaire officielle de XFree86 4.5. Vous la trouverez sur votre <a href="http://www.xfree86.org/mirrors/">miroir XFree86</a> local dans le répertoire <tt style="white-space: nowrap;">4.5.0/binaries/Darwin-ppc-6.x</tt> (ou <tt style="white-space: nowrap;">4.5.0/binaries/Darwin-ppc-5.x</tt> pour Mac OS X 10.1). Téléchargez les fichiers archives tar <tt style="white-space: nowrap;">Xprog.tgz</tt> et <tt style="white-space: nowrap;">Xquartz.tgz</tt> bien qu'ils soient mentionnés comme "optionnels". Si vous ne savez pas quels fichiers sont nécessaires, téléchargez tout le répertoire. Lancez le script <tt style="white-space: nowrap;">Xinstall.sh</tt> en tant que super-utilisateur pour installer l'ensemble. (Nous vous conseillons de lire les <a href="http://www.xfree86.org/4.5.0/Install.html">instructions officielles</a> avant l'installation).</p>

<p>Quelle que soit la version que vous avez installée, vous aurez alors XFree86 avec un serveur plein écran ou sans racine sous Mac OS X.</p>

<h3><a name="inst-xfree86.official-source">3.4 Source Officiel</a></h3>

<p>Si vous avez du temps à perdre, vous pouvez compiler XFree86 4.5.0 à partir du source. Vous trouverez le source sur un des miroirs cités sur <a href="http://www.xfree86.org/mirrors/">XFree86 mirror</a> dans le répertoire <tt style="white-space: nowrap;">4.5.0/source</tt>.
Téléchargez les sept archives tar <tt style="white-space: nowrap;">XFree86-4.5.0-src-#.tgz</tt> et décompressez-les dans un même répertoire. Vous pouvez adapter la compilation à vos besoins en plaçant des définitions de macros dans le fichier <tt style="white-space: nowrap;">config/cf/host.def</tt> situé dans l'arborescence source de XFree86.

Voir le fichier <tt style="white-space: nowrap;">config/cf/darwin.cf</tt> pour quelques explications. (<b>Note</b> : seules les macros insérées dans un #ifndef peuvent être modifiées dans host.def).</p>
<p>Quand vous aurez fini la configuration, compilez et installez XFree86 à l'aide des commandes suivantes :</p>
<pre>make World
sudo make install install.man</pre>

<p>Tout comme avec les binaires officiels, vous obtiendrez XFree86 avec un serveur en mode plein écran ou sans racine sous Mac OS X.</p>

<h3><a name="inst-xfree86.latest-cvs">3.5 Source le plus récent</a></h3>

<p>Si vous avez le temps et des nerfs à toute épreuve, vous pouvez utiliser la dernière version de développement de XFree86 via le référentiel public CVS. Notez que le code est mis à jour constamment ; d'un jour à l'autre il est modifié.</p>
<p>Afin de l'installer, suivez les instructions sur <a href="http://www.xfree86.org/cvs/">XFree86 CVS</a> pour télécharger le module <tt style="white-space: nowrap;">xc</tt>. Puis suivez les instructions de compilation du source ci-dessus.</p>



    
<h3><a name="inst-xfree86.switching-x11">3.6 Remplacement de X11</a></h3>

<p>Si vous avez installé l'un des paquets X11 de Fink, mais que, pour une raison ou une autre, vous décidez de le supprimer pour le remplacer par un autre, la procédure à suivre est simple. Vous devez forcer la suppression des anciens paquets, puis installer les nouveaux de façon à préserver la cohérence de la base de données dpkg.</p>
<p>Il y a deux façons de le faire :</p>
<ol>
<li>
<p>Via FinkCommander</p>
<p>Si vous utilisez  <a href="http://finkcommander.sourceforge.net/">FinkCommander</a>, vous pouvez forcer la suppression via le menu. Par exemple, si vous avez installé <tt style="white-space: nowrap;">xfree86-rootless</tt> et que vous vouliez installer la version gérant les processus légers, sélectionnez les paquets <tt style="white-space: nowrap;">xfree86-rootless</tt>, <tt style="white-space: nowrap;">xfree86-rootless-shlibs</tt>, <tt style="white-space: nowrap;">xfree86-base</tt> et <tt style="white-space: nowrap;">xfree86-base-shlibs</tt>, puis lancez :</p>
<pre>Source -&gt; Force Remove</pre>
</li>
<li>
<p>Manuellement via la ligne de commande</p>
<p>Pour faire une suppression manuelle, utilisez <tt style="white-space: nowrap;">dpkg</tt> avec l'option --force-depends :</p>
<pre>sudo dpkg -r --force-depends xfree86-rootless\ 
xfree86-rootless-shlibs xfree86-base xfree86-base-shlibs</pre>
<p>Notez que si vous utilisez des applications qui nécessitent la version de XFree86 qui gère les processus légers, vous risquez d'avoir quelques problèmes avec la base de données dpkg, si vous supprimez de force cette version et installez un autre paquet XFree86 ou un paquet fantôme le représentant.</p>
</li>
</ol>
<p>Si vous utilisez une version de X11 qui n'a pas été installé via Fink, vous devez la supprimer via la ligne de commande :</p>
<pre>sudo rm -rf /usr/X11R6 /etc/X11</pre>
<p>Ceci est vrai pour tout paquet X11 non installé via Fink. Vous devez aussi supprimer <tt style="white-space: nowrap;">XDarwin.app</tt> ou <tt style="white-space: nowrap;">X11.app</tt>, suivant l'installation effectuée. Examinez le fichier <tt style="white-space: nowrap;">.xinitrc</tt> quand vous supprimez X11 d'Apple pour vous assurer qu'il ne lance pas <tt style="white-space: nowrap;">quartz-wm</tt>.  Vous pouvez ensuite installer la nouvelle variante X11 désirée, manuellement ou via Fink.</p>

<h3><a name="inst-xfree86.fink-summary">3.7 Résumé des paquets Fink disponibles</a></h3>

<p>Voici un court résumé des options d'installation et des paquets Fink à installer :</p>
<table border="0" cellpadding="0" cellspacing="10"><tr valign="bottom"><th align="left">Type d'installation</th><th align="left">Paquets Fink</th></tr><tr valign="top"><td>XFree86 version 4.4.0 ou 4.5.0 (utilisateurs 10.3 et 10.4)</td><td>
<p><tt style="white-space: nowrap;">xfree86</tt> et <tt style="white-space: nowrap;">xfree86-shlibs</tt></p>
</td></tr><tr valign="top"><td>X.org-6.8.2 (utilisateurs 10.3 et 10.4)</td><td>
<p><tt style="white-space: nowrap;">xorg</tt> et <tt style="white-space: nowrap;">xorg-shlibs</tt></p>
</td></tr><tr valign="top"><td>X11 d'Apple (toutes versions)</td><td>
<p><tt style="white-space: nowrap;">system-xfree86</tt> et <tt style="white-space: nowrap;">system-xfree86-shlibs</tt> (et <tt style="white-space: nowrap;">system-xfree86-dev</tt> pour construire les paquets basés sur X11)</p>
</td></tr><tr valign="top"><td>Binaires officiels XFree86 4.x</td><td>
<p><tt style="white-space: nowrap;">system-xfree86</tt> et <tt style="white-space: nowrap;">system-xfree86-shlibs</tt> (et <tt style="white-space: nowrap;">system-xfree86-dev</tt> pour construire les paquets basés sur X11)</p>
</td></tr><tr valign="top"><td>XFree86 version 4.x compilé à partir du source ou de la dernière version CVS</td><td>
<p><tt style="white-space: nowrap;">system-xfree86</tt> et <tt style="white-space: nowrap;">system-xfree86-shlibs</tt> (et <tt style="white-space: nowrap;">system-xfree86-dev</tt> pour construire les paquets basés sur X11)</p>
</td></tr><tr valign="top"><td>XFree86 version 4.2.1.x (utilisateurs 10.2 uniquement) ou 4.2.0 (utilisateurs 10.1 uniquement)</td><td>
<p><tt style="white-space: nowrap;">xfree86-base</tt> et <tt style="white-space: nowrap;">xfree86-rootless</tt> (et les paquets <tt style="white-space: nowrap;">-shlibs</tt> associés)</p>
<p>ou <tt style="white-space: nowrap;">xfree86-base-threaded</tt> et <tt style="white-space: nowrap;">xfree86-rootless-threaded</tt> (et les paquets <tt style="white-space: nowrap;">-shlibs</tt> associés)</p>
</td></tr></table>

<h2><a name="run-xfree86">4 Lancement de X11</a></h2>


<h3><a name="run-xfree86.darwin">4.1 Darwin</a></h3>

<p>Sous Darwin, XFree86 se comporte comme sur n'importe quel autre système Unix. En général, on le lance à partir de la console avec la commande <tt style="white-space: nowrap;">startx</tt> ; elle lance le serveur et un certain nombre de clients, tels le gestionnaire de fenêtres et un émulateur de terminal avec shell. Sous Darwin, il n'est pas nécessaire de fournir des paramètres, on peut simplement utiliser :</p>
<pre>startx</pre>
<p>Vous pouvez personnaliser le lancement en utilisant différents fichiers placés dans votre répertoire utilisateur. <tt style="white-space: nowrap;">.xinitrc</tt> gère les clients à lancer. <tt style="white-space: nowrap;">.xserverrc</tt> gère les options du serveur et peut aussi lancer un autre serveur. Si vous n'arrivez pas à démarrer correctement (vous obtenez un écran blanc ou XFree86 s'arrête immédiatement), vous pouvez commencer par déplacer ces fichiers ailleurs, pour tenter de résoudre le problème. Quand <tt style="white-space: nowrap;">startx</tt> ne trouve pas ces fichiers, il utilise des paramètres par défaut qui devraient convenir.</p>
<p>Vous pouvez aussi démarrer le serveur directement avec l'une des options XDMCP, comme ceci :</p>
<pre>X -query remotehost</pre>
<p>Vous trouverez de plus amples informations dans la man page <tt style="white-space: nowrap;">Xserver</tt>.</p>
<p>Enfin, il existe une option pour paramétrer <tt style="white-space: nowrap;">xdm</tt> ; voir la man page pour de plus amples informations.</p>
<p><b>Note</b> : si vous utilisez Mac OS X antérieur à Panther, vous pouvez saisir <tt style="white-space: nowrap;">&gt;console</tt> dans la fenêtre d'ouverture de session. Vous accéderez ainsi à une console texte équivalente à Darwin. Si aucun champ pour saisir un nom d'utilisateur n'apparaît dans la fenêtre d'ouverture de session, tapez simplement la première lettre du nom d'un utilisateur quelconque, puis appuyez simultanément sur alt-retour chariot. Vous pourrez alors utiliser n'importe quelle méthode de démarrage ci-dessus, à l'exception de <tt style="white-space: nowrap;">xdm</tt>.</p>
<p><b>Note</b> : il est impossible de démarrer XFree86 à partir de la console sous Mac OS X Panther et suivant.</p>

<h3><a name="run-xfree86.macosx-41">4.2 Mac OS X + XFree86 4.x.y</a></h3>

<p>Il y a deux façons de lancer XFree86 sous Mac OS X. L'une est de double-cliquer sur l'application <tt style="white-space: nowrap;">XDarwin.app</tt>, située dans le répertoire <tt style="white-space: nowrap;">Applications</tt>. Vous pouvez alors choisir entre le mode plein écran et le mode sans racine dans la fenêtre de dialogue qui apparaît à l'écran au lancement. Vous pouvez désactiver cette fenêtre de dialogue et indiquer le mode de démarrage automatique souhaité dans les préférences de XDarwin.  </p>
<p>Avant la version 4.2.0, XDarwin démarrait automatiquement en mode plein écran, et il n'y avait aucun moyen de le faire démarrer en mode sans racine en double-cliquant sur l'application.</p>
<p>La seconde façon de démarrer XFree86 sous Mac OS X est de lancer la commande 
<tt style="white-space: nowrap;">startx</tt> dans <tt style="white-space: nowrap;">Terminal.app</tt>. Si vous démarrez le serveur de cette façon, vous devez lui indiquer qu'il fonctionnera en parallèle avec Quartz. Ce qui se fait en utilisant l'option <tt style="white-space: nowrap;">-fullscreen</tt> :</p>
<pre>startx -- -fullscreen</pre>
<p>Le serveur démarre alors en mode plein écran, et les clients mentionnés dans le fichier <tt style="white-space: nowrap;">.xinitrc</tt> sont lancés.  </p>
<p><b>Note</b> : antérieurement à la version 4.2, on utilisait l'option <tt style="white-space: nowrap;">-quartz</tt> pour démarrer en mode plein écran.</p>
<p>Vous pouvez le lancer en mode sans racine avec l'option <tt style="white-space: nowrap;">-rootless</tt> :</p>
<pre>startx -- -rootless</pre>
<p>L'option <tt style="white-space: nowrap;">-quartz</tt> ne sert plus à passer en mode plein écran, mais à utiliser le mode défini dans les préférences.</p>
<p>À partir de la version 4.3, la fenêtre de dialogue de démarrage apparaît quand on utilise <tt style="white-space: nowrap;">startx</tt> sans paramètres.</p>

<h3><a name="run-xfree86.starting-xorg">4.3 Lancement de X.org</a></h3>

<p>X.org marche en tout point de façon identique à XFree86.</p>

<h3><a name="run-xfree86.starting-apples-x11">4.4 Lancement de X11 d'Apple</a></h3>

<p>X11 d'Apple fonctionne de la manière similaire à XFree86 (c'est-à-dire qu'il utilise un fichier <tt style="white-space: nowrap;">.xinitrc</tt> pour contrôler les clients lancés au démarrage). On le lance normalement en double-cliquant sur l'icône de <tt style="white-space: nowrap;">X11.app</tt> (situé dans le répertoire <tt style="white-space: nowrap;">/Applications/Utilitaires</tt>). Vous pouvez aussi utiliser <tt style="white-space: nowrap;">startx</tt>, mais il n'existe pas d'option en ligne de commande pour choisir le mode d'affichage ; dans ce cas, <tt style="white-space: nowrap;">X11.app</tt> démarre dans le mode précédemment choisi dans ses préférences.</p>
<p>Par défaut, le gestionnaire de fenêtres est <tt style="white-space: nowrap;">quartz-wm</tt> d'Apple. Vous pouvez passer de mode plein écran en mode sans racine en changeant l'option correspondante dans les préférences de <b>X11.app</b>. Il n'est pas nécessaire de redémarrer pour que le changement ait lieu. Néanmoins, ceci ne fonctionne pas avec <tt style="white-space: nowrap;">quartz-wm</tt>, il faut choisir un autre gestionnaire de fenêtres (par exemple dans <tt style="white-space: nowrap;">.xinitrc</tt>).</p>
 
 <h3><a name="run-xfree86.applex11tools">4.5 applex11tools</a></h3>

<p>Le paquet <tt style="white-space: nowrap;">applex11tools</tt> de Fink vous permet d'utiliser <tt style="white-space: nowrap;">X11.app</tt> et <tt style="white-space: nowrap;">quartz-wm</tt> sous Mac OS X 10.3 et suivant avec XFree86 4.4 et suivant ou X.org.</p>
<p>Pour installer ce paquet, vous devez activer la <a href="http://www.finkproject.org/faq/usage-fink.php#unstable">branche instable</a> et avoir installé le paquet <tt style="white-space: nowrap;">X11User.pkg</tt> dans la hiérarchie <tt style="white-space: nowrap;">/Users</tt> ou <tt style="white-space: nowrap;">/Volumes</tt>. <tt style="white-space: nowrap;">X11.app</tt> sera installé dans le dossier <tt style="white-space: nowrap;">Applications</tt> de l'arborescence Fink. Vous pourrez alors utilisé soit <tt style="white-space: nowrap;">X11.app</tt> ou <tt style="white-space: nowrap;">XDarwin.app</tt>.</p>
<h3><a name="run-xfree86.xinitrc">4.6 Fichier .xinitrc</a></h3>

<p>S'il existe dans votre répertoire utilisateur un fichier nommé <tt style="white-space: nowrap;">.xinitrc</tt>, il sera utilisé pour lancer quelques clients X au démarrage, tels le gestionnaire de fenêtre, quelques xterm ou un environnement de bureau comme GNOME. Le fichier <tt style="white-space: nowrap;">.xinitrc</tt> est un script shell qui contient les commandes pour ce faire. Il <b>n'est pas</b> nécessaire de mettre le traditionnel <tt style="white-space: nowrap;">#!/bin/sh</tt> dans la première ligne du fichier et de rendre exécutable le fichier ; xinit sait le lancer via un shell.</p>
<p>S'il n'existe pas de fichier <tt style="white-space: nowrap;">.xinitrc</tt> dans votre répertoire utilisateur, X11 utilise le fichier par défaut <tt style="white-space: nowrap;">/private/etc/X11/xinit/xinitrc</tt>. Vous pouvez vous servir de ce fichier comme base pour votre propre fichier .xinitrc :</p>
<pre>cp /private/etc/X11/xinit/xinitrc ~/.xinitrc</pre>
<p>Si vous utilisez Fink, vous devez sourcer <tt style="white-space: nowrap;">init.sh</tt> en début de fichier pour garantir une définition corrrecte de votre environnement.</p>
<p>Vous pouvez mettre à peu près n'importe quelle commande dans un fichier <tt style="white-space: nowrap;">.xinitrc</tt>, mais il faut tenir compte des éléments suivants. Tout d'abord, le shell qui interprète le fichier attend, par défaut, que chaque programme lancé soit terminé avant de lancer le suivant. Si vous voulez lancer plusieurs programmes en parallèle, vous devez indiquer au shell qu'il doit les faire tourner en "arrière-plan", en ajoutant un <tt style="white-space: nowrap;">&amp;</tt> à la fin de la ligne.</p>
<p>Ensuite, <tt style="white-space: nowrap;">xinit</tt> attend que le script <tt style="white-space: nowrap;">.xinitrc</tt> se termine et interprète sa fin ainsi : "la session est terminée, je dois aussi tuer le serveur X maintenant". Cela signifie que la dernière commande du fichier <tt style="white-space: nowrap;">.xinitrc</tt> ne doit pas tourner en arrière-plan et que cette commande doit être un programme de longue durée. En général, on utilise le gestionnaire de gestionnaire comme dernière commande. En fait, la plupart des gestionnaires de fenêtres partent du principe que <tt style="white-space: nowrap;">xinit</tt> attend qu'ils se terminent et utilisent cela pour faire fonctionner l'article de menu  "Fin de session". (<b>Note</b> : pour restreindre l'usage de la mémoire et le nombre de cycles CPU, vous pouvez mettre un <tt style="white-space: nowrap;">exec</tt> au début de la dernière ligne comme dans les exemples ci-dessous.)</p>
<p> Exemple de démarrage de GNOME :</p>
<pre>. /sw/bin/init.sh
exec gnome-session</pre>
<p>Exemple plus complexe pour les utilisateurs de bash qui suppriment les alertes X11, lance un certain nombre de clients et le gestionnaire de fenêtres Enlightenment :</p>
<pre>. /sw/bin/init.sh

xset b off

xclock -geometry -0+0 &amp;
xterm &amp;
xterm &amp;

exec enlightenment</pre>
<p>Pour démarrer GNOME 2.2 sous X11 d'Apple, utilisez les commandes suivantes :</p>    
 <pre>. /sw/bin/init.sh
quartz-wm --only-proxy &amp;
metacity &amp;
exec gnome-session
</pre> 
<p>Pour GNOME 2.4 sous X11 d'Apple, metacity est lancée automatiquement, les commandes sont donc réduites à :</p>    
 <pre>. /sw/bin/init.sh
quartz-wm --only-proxy &amp;
exec gnome-session
</pre> 
<p>Pour lancer KDE 3.2 (version &lt; 3.2.2-21) sous X11 d'Apple :</p>
<pre>. /sw/bin/init.sh
export KDEWM=kwin
quartz-wm --only-proxy &amp;
/sw/bin/startkde &gt;/tmp/kde.log 2&gt;&amp;1
</pre>
<p>Et enfin pour lancer la toute dernière version de KDE sous X11 d'Apple :</p>
<pre>. /sw/bin/init.sh
/sw/bin/startkde &gt;/tmp/kde.log 2&gt;&amp;1
</pre>

<h3><a name="run-xfree86.oroborosx">4.7 OroborOSX</a></h3>

<p><a href="http://oroborosx.sourceforge.net">OroborOSX</a> est une solution de remplacement pour les serveurs d'affichage X11.app et XDarwin display servers. Elle nécessite l'installation préexistante de X11 pour fonctionner. <tt style="white-space: nowrap;">X11.app</tt> et <tt style="white-space: nowrap;">XDarwin.app</tt> continuent à fonctionner en sa présence.</p>
<p>Au lancement, <tt style="white-space: nowrap;">OroborOSX</tt> lance son propre gestionnaire de fenêtres sans racine, mais ne lit ni le fichier <tt style="white-space: nowrap;">xinitrc</tt> du système, ni le fichier <tt style="white-space: nowrap;">.xinitrc</tt> de l'utilisateur. Après lancement, on peut activer l'option de menu correspondante pour exécuter le fichier <tt style="white-space: nowrap;">.xinitrc</tt>. Néanmoins, <tt style="white-space: nowrap;">OroborOSX</tt> a sa propre façon de définir les applicattions à lancer au démarrage. Il possède aussi un mécanisme de démarrage des applications X11 à partir du Finder via des scripts de démarrage.</p>  
<p>Pour de plus amples informations, allez sur la <a href="http://oroborosx.sourceforge.net">page d'accueil d'OroborOSX</a>.</p>
   
<h2><a name="xtools">5 Xtools</a></h2>


<h3><a name="xtools.install">5.1 Installation de Xtools</a></h3>

<p>Pour une fois, c'est facile. Récupérez l'installeur, double-cliquez dessus et suivez les instructions à l'écran. Veillez à choisir le volume de démarrage lorsqu'on vous le demandera.</p>
<p>Si vous utilisez Fink, vous devez installer le paquet <tt style="white-space: nowrap;">system-xtools</tt> après avoir installé Xtools. Ce paquet n'installe aucun fichier, il s'assure simplement que les librairies et autres fichiers nécessaires sont présents sur votre système et tient lieu de paquet fantôme dans le système de dépendances de Fink.</p>

<h3><a name="xtools.run">5.2 Lancement de Xtools</a></h3>

<p>Pour lancer Xtools, double-cliquez sur Xtools.app dans le répertoire Applications. Tout comme XFree86, Xtools lance les clients spécifiés dans le fichier <tt style="white-space: nowrap;">.xinitrc</tt>. De plus, Xtools vous permet de lancer des clients via son menu.</p>

<h3><a name="xtools.opengl">5.3 Notes sur OpenGL</a></h3>

<p>Xtools utilise l'accelération matériel OpenGL en mode sans racine et fournit les librairies pour gérer cette fonctionnalité. La librairie principale libGL est parfaite, mais les librairies libGLU et libglut n'existent que sous forme statique, ce qui n'est pas suffisant pour assurer une compatibilité binaire complète avec XFree86. Quelques headers manquent. Fink ne propose pas de solution à ce problème pour le moment. Nous espérons que le problème sera résolu dans Xtools 1.1.</p>

<h2><a name="other">6 Autres possibilités pour X11</a></h2>


<h3><a name="other.vnc">6.1 VNC</a></h3>

<p>VNC est un système d'affichage graphique en réseau d'architecture semblable à celle de X11. Néanmoins, il fonctionne à un niveau plus bas, rendant son implémentation plus facile. Avec le serveur Xvnc et un client d'affichage Mac OS X, on peut exécuter des applications X11 sous Mac OS X. La <a href="http://www.cdc.noaa.gov/~jsw/macosx_xvnc/">page Xvnc</a> de Jeff Whitaker vous fournira de plus amples informations à ce sujet.</p>

<h3><a name="other.wiredx">6.2 WiredX</a></h3>

<p><a href="http://www.jcraft.com/wiredx/">WiredX</a> est un serveur X11 écrit en Java. Il gère aussi le mode sans racine. Un paquet d'installation Installer.app est disponible sur son site web.</p>

<h3><a name="other.exodus">6.3 eXodus</a></h3>

<p>D'après son site web, <a href="http://www.powerlan-usa.com/exodus/">eXodus 8</a> de Powerlan USA fonctionne en natif sur Mac OS X. On ne sait pas sur quel code il se base, ni s'il gère les clients locaux, ni comment il les gère. En conséquence, Fink ne peut fournir un support adapté à eXodus. Si vous avez de plus amples informations à ce sujet, n'hésitez pas à nous le faire savoir.</p>

<h2><a name="trouble">7 Résolution de problèmes engendrés par XFree86</a></h2>


<h3><a name="trouble.immedate-quit">7.1 Après lancement, XDarwin se termine ou se plante quasi immédiatement</a></h3>

<p>Tout d'abord : pas de panique ! Il existe un grand nombre de choses qui peuvent ne pas fonctionner correctement avec XFree86 ; et un bon nombre d'entre elles peuvent causer des problèmes de démarrage. De plus, quand XDarwin rencontre des problèmes au démarrage, il est fréquent qu'il se plante. Cette section tente de fournir une liste exhaustive des problèmes que vous pouvez rencontrer. Mais, tout d'abord, vous devez collecter deux informations importantes.</p>
<p><b>Version de XDarwin</b> : vous obtiendrez la version de XDarwin en cliquant <b>une seule fois</b> sur l'icône de XDarwin dans le Finder, puis en choisissant "Lire les informations" à partir du menu (raccourci Cmd-I). Le numéro de version n'est incrémenté que lorsqu'une nouvelle version de test binaire est produite par le projet XonX ; autrement dit, "1.0a1" correspond à n'importe quelle version entre 1.0a1 et 1.0a2.</p>
<p><b>Messages d'erreur</b> : ils sont essentiels à la compréhension du problème auquel vous êtes confronté. Leur emplacement dépend de la façon dont vous avez lancé XDarwin. Si vous avez lancé <tt style="white-space: nowrap;">startx</tt> dans une fenêtre de Terminal, les messages apparaissent directement dans cette fenêtre. Vous pouvez utiliser les barres de défilement. Si vous avez lancé XDarwin en double-cliquant sur son icône, les messages apparaissent dans les logs système, auxquels vous avez accès via l'application Console, située dans le répertoire Utilities (situé dans le répertoire Applications). Assurez-vous que vous récupérez les bons messages, c'est-à-dire les derniers.</p>
<p>Commençons par une liste des messages possibles :</p>
<pre>_XSERVTransmkdir: Owner of /tmp/.X11-unix should be set to root</pre>
<pre>_IceTransmkdir: Owner of /tmp/.ICE-unix should be set to root</pre>
<p>Sévérité : inoffensif. X11 crée des répertoires cachés dans /tmp pour stocker les "fichiers"  socket utilisés pour les connexions locales. Pour des raisons de sécurité, X11 s'attend à ce que le possesseur de ces répertoires soit le super-utilisateur ; mais, comme ils sont accessibles en écriture par tout utilisateur, X11 fonctionne sans problèmes. (<b>Note</b> : il est très difficile de définir le super-utilisateur comme possesseur de ces répertoires, car Mac OS X vide /tmp lors du redémarrage et XDarwin ne fonctionne pas, en temps normal, - et n'a pas besoin de fonctionner - avec les privilèges de super-utilisateur.)</p>
<pre>QuartzAudioInit: AddIOProc returned 1852797029</pre>
<pre>-[NSCFArray objectAtIndex:]: index (2) beyond bounds (2)</pre>
<pre>kCGErrorIllegalArgument : CGSGetDisplayBounds (display 35434400)</pre>
<pre>No core keyboard</pre>
<p>Sévérité : bogue. Ce sont des erreurs qui apparaissent quand le serveur tente de se rétablir après une erreur précédente. Durant ce processus, une nouvelle copie de la bannière de démarrage est imprimée, suivie d'un ou plusieurs messages semblables à ceux indiqués ci-dessus, car la procédure de rétablissement du serveur ne fonctionne pas correctement dans certaines versions de XDarwin. Quand vous voyez apparaître ce type de messages, utilisez les barres de défilement dans la fenêtre de Terminal ou dans la fenêtre de Console pour rechercher plus haut une autre bannière de démarrage suivie d'autres messages. Ce bogue affecte toutes les versions de XDarwin jusqu'à la version 1.0a3 ; il a été résolu après la publication de la version 1.0a3.</p>
<pre>cat: /Users/chrisp/.Xauthority: No such file or directory</pre>
<p>Sévérité : quasi inoffensif. On ne sait pas d'où viennent ces messages et ils semblent n'avoir aucune incidence sur le déroulement des opérations. Vous pouvez les éliminer en exécutant <tt style="white-space: nowrap;">touch .Xauthority</tt> dans votre répertoire utilisateur.</p>
<pre>Gdk-WARNING **: locale not supported by C library</pre>
<p>Sévérité : inoffensif. Cela signifie que la librairie C ne gère pas votre locale, mais cela n'empêche pas l'application de fonctionner. Pour de plus amples informations, <a href="#trouble.locale">voir ci-dessous</a>.</p>
<pre>Gdk-WARNING **: locale not supported by Xlib, locale set to C
Gdk-WARNING **: can not set locale modifiers</pre>
<p>Sévérité : pas bon, mais non fatal. Ces messages peuvent apparaître à la suite du précédent. Ceci signifie que les fichiers de données locale de XFree86 n'existent pas sur votre système. Il semble que le message apparaisse de façon erratique quand on compile XFree86 à partir du source. La plupart des applications fonctionnent, mais GNU Emacs fait partie des exceptions.</p>
<pre>Unable to open keymapping file USA.keymapping.
Reverting to kernel keymapping.</pre>
<p>Sévérité : souvent fatal. Ceci peut se produire avec XDarwin 1.0a1, quand l'option "Load from file" est activée. Cette version requiert un chemin complet quand le fichier de mappage clavier est chargé via le dialogue de Préférences, mais exécute une recherche automatique quand l'option "-keymap" est utilisée en ligne de commande. Ce message est généralement suivi du message "assert" suivant. Pour résoudre le problème, suivez les instructions ci-dessous.</p>
<pre>Fatal server error:
assert failed on line 454 of darwinKeyboard.c!</pre>
<pre>Fatal server error:
Could not get kernel keymapping! Load keymapping from file instead.</pre>
<p>Sévérité : fatal. Les modifications qu'Apple a fait dans Mac OS X 10.1 ont entraîné des répercutions sur le fonctionnement de XFree86. En effet, celui-ci lit normalement les symboles clavier à partir du noyau du système opératoire. Le message ci-dessus en est la conséquence. Vous devez utiliser l'option de mappage de clavier "Load from file" sur Mac OS X 10.1. Cette option est accessible à partir du dialogue de Préférences de XDarwin. N'oubliez pas de choisir un fichier (c'est-à-dire utilisez le bouton "Pick file"). Cocher la case peut s'avérer insuffisant avec certaines versions de XDarwin. Si vous ne pouvez pas accéder au dialogue de Préférences, parce que XDarwin quitte avant que vous puissiez y accéder, exécutez <tt style="white-space: nowrap;">startx -- -quartz -keymap USA.keymapping</tt> dans une fenêtre de Terminal. Ceci permet, en général, de lancer XDarwin ; il vous suffit ensuite d'aller dans le dialogue de Préférences et d'y activer le mappage du clavier pour que ce choix devienne permanent.</p>
<pre>Fatal server error:
Could not find keymapping file .</pre>
<p>Sévérité : fatal (comme indiqué). Cette erreur est due à l'absence de fichiers de mappage clavier sous Panther. Vous devez installer <tt style="white-space: nowrap;">xfree86-4.3.99-16</tt> ou une version postérieure, car ces versions ne nécessitent pas de fichiers de mappage clavier.</p>
<pre>Warning: no access to tty (Inappropriate ioctl for device).
Thus no job control in this shell.</pre>
<p>Sévérité : quasi inoffensif. XDarwin 1.0a2 et les versions suivantes lancent un shell interactif en arrière-plan pour exécuter le fichier de démarrage client (.xinitrc). Ceci afin que vous n'ayez pas besoin d'ajouter des commandes de définition de votre PATH dans ce fichier. Certains shells signalent qu'ils ne sont pas connectés à un vrai terminal ; ce message peut être ignoré, car cette instance de shell n'est pas utilisée pour exécuter quoi que ce soit qui requière un contrôle de tâches ou quelque chose de similaire.</p>
<pre>Fatal server error:
failed to connect as window server!</pre>
<p>Sévérité : fatal. Cela signifie que le serveur a démarré en mode console (pour Darwin seul), alors que vous étiez connecté sous Aqua. Ceci arrive lorsque vous installez la distribution officielle binaire XFree86 et que vous oubliez d'installer l'archive tar Xquartz.tgz. Cela peut aussi survenir quand les liens symboliques dans /usr/X11R6/bin ne pointent pas sur les bons fichiers et quand vous lancez la commande <tt style="white-space: nowrap;">XDarwin</tt> dans une fenêtre de Terminal pour démarrer le serveur (vous devez utiliser startx dans ce cas, voir <a href="#run-xfree86">Lancement de XFree86</a>).</p>
<p>Vous pouvez toujours lancer la commande <tt style="white-space: nowrap;">ls -l /usr/X11R6/bin/X*</tt> et vérifier son résultat. Vous devez voir quatre lignes remarquables : <tt style="white-space: nowrap;">X</tt>, un lien symbolique pointant sur <tt style="white-space: nowrap;">XDarwinStartup</tt> ; <tt style="white-space: nowrap;">XDarwin</tt>, un fichier exécutable (c'est le serveur en mode console) ; <tt style="white-space: nowrap;">XDarwinQuartz</tt>, un lien symbolique pointant sur <tt style="white-space: nowrap;">/Applications/XDarwin.app/Contents/MacOS/XDarwin</tt> ; et <tt style="white-space: nowrap;">XDarwinStartup</tt>, un petit fichier exécutable. Si l'un de ces fichiers manque ou ne pointe pas sur le bon fichier, vous devez corriger l'erreur. La façon de le faire dépend de la méthode que vous avez utilisée pour installer XFree86. Si vous avez installé XFree86 via Fink, vous devez réinstaller le paquet <tt style="white-space: nowrap;">xfree86</tt> (ou <tt style="white-space: nowrap;">xfree86-rootless</tt> pour Mac OS 10.2 ou versions antérieures). Si vous l'avez installé manuellement, vous devez récupérer les fichiers à partir d'une copie de Xquartz.tgz.</p>
<pre>The XKEYBOARD keymap compiler (xkbcomp) reports:
&gt; Error:            Can't find file "unknown" for geometry include
&gt;                   Exiting
&gt;                   Abandoning geometry file "(null)"
Errors from xkbcomp are not fatal to the X server</pre>
<p>Sévérité : quasi inoffensif. Cette erreur n'est pas fatale. À ma connaissance, XDarwin n'utilise pas du tout l'extension XKB. Il est probable qu'un programme client tente, malgré tout, de l'utiliser...</p>
<pre>startx: Command not found.</pre>
<p>Sévérité : fatal. Ceci arrive avec XDarwin 1.0a2 et 1.0a3 quand les fichiers d'initialisation de votre shell ne comprennent aucune commande pour ajouter le chemin /usr/X11R6/bin à la variable d'environnement PATH. Si vous utilisez Fink et que vous n'avez pas changer votre shell par défaut, il vous suffit d'ajouter la ligne <tt style="white-space: nowrap;">source /sw/bin/init.csh</tt> au fichier <tt style="white-space: nowrap;">.cshrc</tt> situé dans votre répertoire utilisateur, comme indiqué dans les instructions de Fink.</p>
<pre>_XSERVTransSocketUNIXCreateListener: ...SocketCreateListener() failed
_XSERVTransMakeAllCOTSServerListeners: server already running</pre>
<pre>Fatal server error:
Cannot establish any listening sockets - Make sure an X server isn't already
running</pre>
<p>Sévérité : fatal. Ceci arrive quand vous lancez involontairement plusieurs instances de XDarwin en même temps, ou après une terminaison anormale (un plantage) de XDarwin. Cela peut provenir aussi d'un problème de permission sur les fichiers sockets utilisés pour les connexions locales. Vous pouvez tenter de résoudre le problème en exécutant <tt style="white-space: nowrap;">rm -rf /tmp/.X11-unix</tt>. Le redémarrage de l'ordinateur résout aussi le problème dans la plupart des cas (Mac OS X vide automatiquement le répertoire /tmp lors du démarrage, et la pile réseau est redéfinie).</p>
<pre>Xlib: connection to ":0.0" refused by server
Xlib: Client is not authorized to connect to Server</pre>
<p>Sévérité : fatal. Les programmes client sont incapables de se connecter au serveur d'affichage (XDarwin), car ils utilisent des données d'authentification incorrectes. La cause peut en être certaines installations VNC, le lancement de XDarwin via sudo, ou autres bizarreries. Pour résoudre le problème, il suffit de supprimer le fichier .Xauthority (qui stocke les données d'authentification) situé dans votre répertoire utilisateur et de recréer un fichier vide de la façon suivante :</p>
<pre>cd
rm .Xauthority
touch .Xauthority</pre>
      
<p>Une autre cause fréquente d'échec de démarrage de XFree86 est un fichier <tt style="white-space: nowrap;">.xinitrc</tt> incorrect. Le fichier <tt style="white-space: nowrap;">.xinitrc</tt> est lancé et, pour une raison inconnue, se termine quasi immédiatement. <tt style="white-space: nowrap;">xinit</tt> interprète cette fin comme "une fin de session demandée par l'utilisateur" et tue XDarwin. Voir la <a href="#run-xfree86.xinitrc">section Fichier .xinitrc</a> pour de plus amples informations. N'oubliez pas de définir le PATH et de choisir comme dernière commande un programme de longue durée ne tournant pas en arrière-plan. Conseil : ajoutez <tt style="white-space: nowrap;">exec xterm</tt> comme roue de secours pour le cas où il serait impossible de trouver votre gestionnaire de fenêtres ou un programme équivalent.</p>
    
<h3><a name="trouble.black">7.2 Icônes noires dans le panneau GNOME ou dans le menu d'une application GNOME</a></h3>

<p>Les icônes ou images sont affichées sous forme de rectangles noirs ou ont une bordure noire. Ceci est dû aux limitations du noyau du système opératoire. Le problème a été rapporté à Apple, mais, pour l'instant, il ne semble pas qu'il y ait une réelle volonté de le résoudre ; voir le <a href="http://www.opensource.apple.com/bugs/X/Kernel/2691632.html">rapport de bogue Darwin</a> pour de plus amples informations.</p>
<p>À l'heure actuelle, l'extension MIT-SHM du protocole X11 est inutilisable sous Darwin et Mac OS X. Il y a deux façons de désactiver l'extension : dans le serveur ou dans les clients. Les serveurs XFree86 installés par Fink (les paquets xfree86-server et xfree86-rootless) désactivent cette extension. The GIMP et le panneau GNOME aussi. Si vous voyez apparaître des icônes noires dans d'autres applications, démarrez-les avec l'option <tt style="white-space: nowrap;">--no-xshm</tt>.</p>

<h3><a name="trouble.keyboard">7.3 Le clavier ne fonctionne pas sous XFree86</a></h3>

<p>C'est un problème qui ne semble affecter que les portables (PowerBook, iBook).
Pour corriger ce problème, on a implémenté l'option de mappage de clavier "Load from file". Maintenant, cette méthode est devenue la méthode par défaut, car l'ancienne méthode (de lecture du mappage à partir du noyau) a cessé de fonctionner à partir de Mac OS X 10.1. Si vous n'avez pas encore activé cette option, vous pouvez le faire dans le dialogue de préférences de XDarwin. N'oubliez pas de cocher la case "Load from file" et sélectionnez le fichier de mappage à charger. Après redémarrage de XDarwin, votre clavier devrait fonctionner à peu près correctement (voir plus bas).</p>
<p>Si vous démarrez XFree86 en ligne de commande, vous pouvez passer le nom du fichier de mappage en option, de la façon suivante :</p>
<pre>startx -- -quartz -keymap USA.keymapping</pre>

<h3><a name="trouble.delete-key">7.4 La touche retour arrière ne fonctionne pas</a></h3>

<p>Ceci survient quand vous utilisez l'option "Load keymapping from file" décrite ci-dessus. Les fichiers de mappage font correspondre la touche retour arrière à "Suppression", et non pas à "Retour arrière". Vous pouvez modifier cette correspondance en insérant la ligne suivante dans votre fichier .xinitrc.</p>
<pre>xmodmap -e "keycode 59 = BackSpace"</pre>
<p>Si mes souvenirs sont bons, XDarwin 1.0a2 et les versions ultérieures assurent une correspondance correcte de la touche retour arrière.</p>

<h3><a name="trouble.locale">7.5 "Warning: locale not supported by C library"</a></h3>

<p>Ces messages sont courants, et inoffensifs. Cela signifie simplement que l'internationalisation n'est pas gérée par la librairie standard C, le programme utilisera donc, par défaut, l'anglais pour les messages, les formats de date, etc... Il y a plusieurs façons de résoudre le problème :</p>
<ul>
<li>
<p>Ignorer ces messages.</p>
</li>
<li>
<p>Supprimer ces messages en supprimant la définition de la variable d'environnement LANG. Notez que cela désactivera aussi l'internationalisation des programmes (pour les programmes qui la gèrent via gettext/libintl). Exemple pour .xinitrc :</p>
<pre>unset LANG</pre>
<p>Exemple pour .cshrc :</p>
<pre>unsetenv LANG</pre>
</li>
<li>
<p>(10.1 uniquement) Utiliser le paquet Fink <tt style="white-space: nowrap;">libxpg4</tt>. Il construit une petite librairie qui contient des fonctions locales et gère leur chargement avant celui des librairies système (en utilisant la variable d'environnement DYLD_INSERT_LIBRARIES). Vous devrez peut-être donner à la variable d'environnement LANG une valeur complète, par exemple : <tt style="white-space: nowrap;">de_DE.ISO_8859-1</tt> au lieu de <tt style="white-space: nowrap;">de</tt> ou <tt style="white-space: nowrap;">de_DE</tt>.</p>
</li>
<li>
<p>Demander à Apple d'inclure une gestion correcte des locales dans une version ultérieure de Mac OS X.</p>
</li>
</ul>

<h2><a name="tips">8 Conseils d'utilisation</a></h2>


<h3><a name="tips.terminal-app">8.1 Lancement d'applications X11 à partir de Terminal.app</a></h3>

<p>Pour lancer des applications X11 à partir d'une fenêtre de Terminal.app, vous devez initialiser la variable d'environnement "DISPLAY". Cette variable indique aux applications l'emplacement du serveur de fenêtre X11. Quand XDarwin tourne sur la même machine que le serveur, vous pouvez initialiser cette variable de la façon suivante :</p>
<ul>
<li><p>Pour les utilisateurs de tcsh :</p>
<pre>setenv DISPLAY :0.0</pre>
</li>
<li><p>Pour les utilisateur de bash :</p>
<pre>export DISPLAY=":0.0"</pre>
</li>
</ul>
<p>Il est intéressant d'avoir une configuration qui lance XDarwin.app au démarrage (à indiquer dans les Préférences système, panneau Éléments d'ouverture sur Mac OS 10.2, panneau Comptes, Démarrage sur Mac OS 10.3):</p>
<ul><li><p>Pour les utilisateurs de tcsh, ajoutez les lignes suivantes à votre fichier .cshrc :</p>
<pre>if (! $?DISPLAY) then
setenv DISPLAY :0.0
endif</pre>
</li>
<li><p>Pour les utilisateurs de bash, ajoutez les lignes suivantes à votre fichier .bashrc :</p>
<pre>[[ -z $DISPLAY ]] &amp;&amp; export DISPLAY=":0.0"</pre>
</li></ul>
<p>Ces lignes initialisent automatiquement la variable DISPLAY dans tout shell ouvert, mais ne modifient pas sa valeur si elle est déjà initialisée. De cette manière, vous pouvez continuer à exécuter des applications X11 à distance ou via ssh par un tunnel X11.</p>

<h3><a name="tips.open">8.2 Lancement d'applications Aqua à partir d'un xterm</a></h3>

<p>Pour lancer des applications Aqua à partir d'un xterm (ou de n'importe quel autre shell), vous pouvez utiliser la commande <tt style="white-space: nowrap;">open</tt>. Exemples :</p>
<pre>open /Applications/TextEdit.app
open SomeDocument.rtf
open -a /Applications/TextEdit.app index.html</pre>
<p>Le second exemple ouvre le document dans l'application qui lui est associée, le troisième exemple indique explicitement l'application à utiliser.</p>

<h3><a name="tips.copy-n-paste">8.3 Copier-coller</a></h3>

<p>Le copier-coller fonctionne, en général, entre les environnements Aqua et X11. Il reste quelques bogues. Emacs est particulièrement sensible à la sélection en cours. Le copier-coller entre Classic et X11 ne fonctionne pas.</p>
<p>Ce qui est important est d'utiliser la bonne méthode selon l'environnement dans lequel vous êtes. Pour transférer du texte de Aqua vers X11, utilisez Cmd-C dans Aqua, faites venir la fenêtre de destination au premier-plan et utilisez le "bouton central de la souris", ou Alt-clic avec une souris à un bouton (vous pouvez configurer cette action dans les Préférences de XDarwin) pour coller. Pour transférer du texte de X11 vers Aqua, sélectionnez le texte avec la souris dans X11, puis utilisez Cmd-V dans Aqua pour le coller.</p>
<p>En fait, le système X11 possède plusieurs presse-papiers distincts (appelés  "buffers de coupe" dans la terminologie X11) et certaines applications ont des idées bien arrêtées sur celui qu'elle doivent utiliser. C'est ainsi que le collage dans GNU Emacs ou XEmacs ne fonctionne pas toujours bien. Le programme <tt style="white-space: nowrap;">autocutsel</tt> permet d'améliorer les choses ; il synchronise automatiquement les deux buffers de coupe principaux. Pour l'exécuter, installez le paquet Fink autocutsel et ajoutez la ligne suivante à votre fichier .xinitrc :</p>
<pre>autocutsel &amp;</pre>
<p>(Assurez-vous que cette ligne est placée <b>avant</b> la ligne d'exécution du gestionnaire de fenêtres et qu'elle tourne en arrière-plan. Ne l'ajoutez pas à la fin, elle ne serait jamais exécutée). Et rappelez-vous que ce paquet n'est plus nécessaire avec X11 d'Apple (voir <a href="#inst-xfree86.apple-binary">Notes au sujet de l'utilisation de X11 d'Apple</a>).</p>
<p>Si vous utilisez X11 d'Apple, vous pouvez utilisez Cmd-C ou Édition-&gt;Copier, comme pour les applications Mac, pour copier du texte dans le presse-papiers, et le bouton central de la souris ou Cmd-V pour coller le texte dans X11.</p>
<p>Dans tous les cas de figure, si vous avez des difficultés à copier-coller du texte d'Aqua dans X11 ou vice-versa, vous pouvez tout d'abord réitérer l'action coller (il arrive qu'elle ne soit pas exécutée la première fois), ensuite vous pouvez utiliser des applications intermédiaires, par exemple TextEdit ou Terminal.app sous Aqua, nedit ou un xterm sous X11. Il y a toujours une solution à ce problème.</p>

<hr><h2>Copyright Notice</h2><p>Copyright (c) 2001 Christoph Pfisterer,
Copyright (c) 2001-2011 The Fink Project.
You may distribute this document in print for private purposes,
provided the document and this copyright notice remain complete and
unmodified. Any commercial reproduction and any online publication
requires the explicit consent of the author.</p><hr>
<p>Generated from <i>$Fink: x11.fr.xml,v 1.26 2007/08/15 21:57:04 dmacks Exp $</i></p></body></html>
